//webpack配置
module.exports = {
	//打包输出路径
	publicPath:'./',
    //第三方插件占用体积比较大的，要进行代码拆分抽离
	chainWebpack: config => {
		    //注意此处,前面键名要跟项目中引用的名字对应上
			config.externals({
				"echarts": "echarts", 
				"$": "jquery",
			})
	},
    //目录访问,可配置别名
	configureWebpack: {
		resolve: {
			alias: {
				'assets': '@/assets',
				'common': '@/common',
				'components': '@/components',
				'network': '@/network',
				'views': '@/views',
				'commonfun': '@/commonfun'
			}
		}
	},
	
	//使用vw/vh布局进行适配
	css: {
	    loaderOptions: {
	      postcss: {
	        plugins: [
	          require("postcss-px-to-viewport")({
	            unitToConvert: "px",//转换哪些尺寸单位
	            viewportWidth: 1920,//设计图宽度-代表1920px=100vw 也就是100%
	            unitPrecision: 3,//指定`px`转换为视窗单位值的小数位数
	            propList: [
	              "*"
	            ],
	            viewportUnit: "vw",
	            fontViewportUnit: "vw",
	            selectorBlackList: ['#app'], // 指定不需要转换的类
	            minPixelValue: 1, //小于或等于`1px`时不转换为视窗单位
	            mediaQuery: false, //是否允许媒体查询中转换px
	            replace: true,
	            exclude: /(\/|\\)(node_modules)(\/|\\)/
	          })
	        ]
	      }
	    }
	},
    
	//去除生产环境的SourceMap代码镜像
	productionSourceMap: false,
	//开发环境-配置代理跨域
	devServer: {
		open: true, // 自动启动浏览器
		host: '0.0.0.0', // localhost
		port: 6060, // 端口号
		hotOnly: false, // 热更新
		overlay: {
			//  当出现编译器错误或警告时，在浏览器中显示全屏覆盖层
			warnings: false,
			errors: true
		},
		proxy: {
			//配置跨域-只能用于开发环境,上线环境不起作用
			'/api': {
				// target: 'http://localhost:6060', // 接口的域名 在页面调用时用 /api
				target: 'https://view.inews.qq.com/g2/getOnsInfo',
				// ws: true, // 是否启用websockets
				changOrigin: true, // 开启代理，在本地创建一个虚拟服务端
				pathRewrite: {
					'^/api': ''
				}
			}
		}
	},
}
